using Microsoft.SqlServer.Management.Sdk.Sfc;
using System;
using System.Collections;

namespace Microsoft.SqlServer.Management.SqlManagerUI.Scripting
{
	internal class ObjectScriptedEventArgs : EventArgs
	{
		private Urn source;

		private IEnumerable script;

		private ScriptActions action;

		private Microsoft.SqlServer.Management.SqlManagerUI.ObjectInfo _objectInfo;

		public Microsoft.SqlServer.Management.SqlManagerUI.ObjectInfo ObjectInfo
		{
			get
			{
				return this._objectInfo;
			}
		}

		public IEnumerable Script
		{
			get
			{
				return this.script;
			}
		}

		public ScriptActions Action
		{
			get
			{
				return this.action;
			}
		}

		public ObjectScriptedEventArgs(Microsoft.SqlServer.Management.SqlManagerUI.ObjectInfo objectInfo, IEnumerable script, ScriptActions action)
		{
			if (objectInfo == null)
			{
				throw new ArgumentNullException("source");
			}
			if (script == null)
			{
				throw new ArgumentNullException("script");
			}
			this.source = objectInfo.Urn;
			this.script = script;
			this.action = action;
			this._objectInfo = objectInfo;
		}
	}
}
